﻿#include <iostream>
#include <cmath>
using namespace std;
int smallest_digit(int n) {
    int mindigit = n % 10;
    n /= 10;
    while (n != 0) {
        if (mindigit > n % 10)
            mindigit = n % 10;
        n /= 10;
    }
    return mindigit;
}
int max_digit(int n) {
    int maxdigit = 0;
    while (n > 0) {
        maxdigit = max(maxdigit, n % 10);
        n /= 10;
    }
    return maxdigit;
}
int main() {
    setlocale(LC_ALL, "Rus");
    int num = 0;
    cout << "Введите четырехзначное число:";
    cin >> num;
    if (10000 > num && num > 999) {
        cout << "Число четное: ";
        if (num % 2 == 0) { cout << "Да\n"; }
        else { cout << "Нет\n"; }
        cout << "Число кратное трем: ";
        if (num % 3 == 0) { cout << "Да\n"; }
        else { cout << "Нет\n"; }
        cout << "Число является квадратом числа: ";
        if (sqrt(num) == floor(sqrt(num))) {
            cout << sqrt(num);
        }
        else {
            cout << "Нет\n";
        }
        cout << "\nНаименьшая цифра числа: " << smallest_digit(num);
        cout << "\nНаибольшая цифра числа: " << max_digit(num);
        cout << "\nКоличество нулей в числе: ";
        int i = 0;
        int digit1 = num % 10 / 1;
        int digit2 = num % 100 / 10;
        int digit3 = num % 1000 / 100;
        int digit4 = num % 10000 / 1000;
        if (digit1 == 0) { i++; }
        if (digit2 == 0) { i++; }
        if (digit3 == 0) { i++; }
        if (digit4 == 0) { i++; }
        cout << i;
        cout << "\nЦифра в разряде единиц является квадратом числа: ";
        if (sqrt(digit1) == floor(sqrt(digit1))) { cout << sqrt(digit1); }
        else { cout << "Нет\n"; }
        cout << "\nЦифра в разряде десятков является квадратом числа: ";
        if (sqrt(digit2) == floor(sqrt(digit2))) { cout << sqrt(digit2); }
        else { cout << "Нет\n"; }
        cout << "\nЦифра в разряде сотен является квадратом числа: ";
        if (sqrt(digit3) == floor(sqrt(digit3))) { cout << sqrt(digit3); }
        else { cout << "Нет\n"; }
        cout << "\nЦифра в разряде тысяч является квадратом числа: ";
        if (sqrt(digit4) == floor(sqrt(digit4))) { cout << sqrt(digit4); }
        else { cout << "Нет\n"; }
    }
    else {
        cout << "Введенное число не является четырехзначным";
    }
}